<?php
namespace Home\Controller;
use Think\Controller;

class ApiController extends Controller {
    public function index(){
        $this->show();
    }
    //查询用户信息
    public function queryuserinfo(){
      checkscret('secret');//验证授权码
      checkdataPost('username');//用户名
      checkdataPost('password');//密码
      $map['username'] = $_POST['username'];
      $map['password'] = $_POST['password'];
      $map['role']=array('neq','01');//出去质控人员 其他都能登陆
      $releaseInfo=M('gf_user')->field('id as userid,username,password,xm,phone,workpace,role')->where($map)->find();//返回查询到的 第一条数据
      if($releaseInfo){
        returnApiSuccess('查询用户信息成功',$releaseInfo);
      }
      else{
        returnApiError( '没有查询到任何数据');
        exit();
      }
    }

    //修改用户密码和手机号
    public function updatepassword_phone(){
        checkscret('secret');//验证授权码
        checkdataPost('userid');//用户ID
  
        $userid=$_POST['userid'];
        $password=$_POST['password'];
        $phone=$_POST['phone'];
        if(!empty($password)){
          $data['password']=$password;
        }
        if(!empty($phone)){
          $data['phone']=$phone;
        }
        $map['id']=$userid;
  
        $res=M()->table('gf_user')->where($map)->save($data);
        if($res){
          returnApiSuccess('修改成功',$data);
        }
        else{
          returnApiError( '修改失败');
          exit();
        }
      }

    //查询负责企业列表
    public function queryqylist(){
        checkscret('secret');//验证授权码
        checkdataPost('userid');//用户ID

        $map['fzry'] = $_POST['userid'];
        $releaseInfo=M('gf_company')->field('id,name,concat(\'http://guifan.huishihuanjing.com\',img_path) img_path')->where($map)->select();
        if($releaseInfo){
          returnApiSuccess('查询企业信息成功',$releaseInfo);
        }
        else{
          returnApiError( '没有查询到任何数据');
          exit();
        }
      }

    //查询负责站房
    public function queryzflist(){
        checkscret('secret');//验证授权码
        checkdataPost('qyid');//企业ID
        checkdataPost('zflx');//站房类型

        $map['ssqy'] = $_POST['qyid'];
        $map['zflx'] = $_POST['zflx'];
        $releaseInfo=M('gf_zf')->field('id,name')->where($map)->select();
        if($releaseInfo){
          returnApiSuccess('查询站房信息成功',$releaseInfo);
        }
        else{
          returnApiError( '没有查询到任何数据');
          exit();
        }
      }

    //查询资料
    public function queryzllist(){
        checkscret('secret');//验证授权码
        checkdataPost('zlid');//资料ID 01 站房标准化  02 现场资料  03 设备比对  04 配件维修
        checkdataPost('zflx');//站房类型

        $zlid=$_POST['zlid'];
        $zflx=$_POST['zflx'];

        $map['lx']=$zflx;
        $map['type']=$zlid;//01 站房标准化  02 现场资料  03 设备比对  04 配件维修

        $releaseInfo=M('gf_zl')->field('id,bt,sm,zq')->where($map)->select();

        if($releaseInfo){
          returnApiSuccess('查询资料信息成功',$releaseInfo);
        }
        else{
          returnApiError( '没有查询到任何数据');
          exit();
        }
      }

    //上传照片
    public function uploadzp(){
      checkscret('secret');//验证授权码
      checkdataPost('qyid');//企业ID
      checkdataPost('zflx');//站房类型
      checkdataPost('zfid');//站房ID
      checkdataPost('zlid');//资料ID 01 站房标准化  02 现场资料  03 设备比对  04 配件维修
      checkdataPost('btid');//资料标题ID
      checkdataPost('userid');//用户ID
      checkdataPost('dqdz');//当前地址

      $qyid=$_POST['qyid'];
      $zflx=$_POST['zflx'];
      $zfid=$_POST['zfid'];
      $zlid=$_POST['zlid'];
      $btid=$_POST['btid'];
      $userid=$_POST['userid'];
      $dqdz=$_POST['dqdz'];

      $data['qyid']=$qyid;
      $data['zflx']=$zflx;
      $data['zfid']=$zfid;
      $data['zlid']=$zlid;
      $data['btid']=$btid;
      $data['fzr']=$userid;
      $data['sj']=time();
      $data['zt']='01';//正常
      $data['dqdz']=$dqdz;

      $info=M()->table('gf_pzjl')->data($data)->add();
      if($info){
        $upload = new \Think\Upload(); // 实例化上传类
        $upload->rootPath = './Uploads/'; // 设置附件上传根目录
        $upload->saveName = array('uniqid', mt_rand(1,999999).'_'.md5(uniqid())); // 自定义图片重命名
        $upload->exts = array('jpg', 'jpeg' ,'png'); // 设置附件上传类型 只允许照片
        // 上传文件
        $uploadinfo = $upload->upload();
        if($uploadinfo) {// 存在图片上传成功
          $ysctpsl=0;
          foreach ($uploadinfo as $file) {
              # code...
              $image = "/Uploads/".$file['savepath'].$file['savename'];
              $datazp['img_path']=$image;
              $datazp['pz_id']=$info;
              $imginfo=M()->table('gf_zp')->data($datazp)->add();
              if($imginfo){
                $ysctpsl=$ysctpsl+1;
              }
          }
        }
        returnApiSuccess('成功照片上传'.$ysctpsl.'张，如有漏传，请在我的记录进行补传。',$releaseInfo);
      }
      else{
        returnApiError( '照片上传失败');
        exit();
      }
    }

    //查询需要整改的记录
    public function getthzgbyuser(){
      checkscret('secret');//验证授权码
      checkdataPost('userid');//用户ID
      checkdataPost('limit');//每页个数

      $limit=$_POST['limit'];
      $skip=$_POST['skip'];
      if(empty($skip)){
        $skip=0;
      }
      $fzr=$_POST['userid'];
      $map['fzr']=$fzr;
      $map['zt']='01';//未整改的
      $data=M()->table('gf_pzjl_thzg')->field('id,ssqy(qyid) qymc,sjzd(zflx,\'类型\') zflxmc,zf(zfid) zfmc,sjzd(zlid,\'资料类别\') zllxmc,zlbt(btid) btmc,pzjlid,bz,from_unixtime(zgsj,\'%Y-%m-%d %H:%i:%s\') zgsj')->where($map)->limit($skip,$limit)->order('zgsj')->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('没有查询到需要整改的记录。');
        exit();
      }
    }

    //上传退回整改的照片
    public function upload_zg(){
      checkscret('secret');//验证授权码
      checkdataPost('pzjlid');//拍照记录ID
      checkdataPost('zgjlid');//整改记录ID
      checkdataPost('dqdz');//当前地址

      $pzjlid=$_POST['pzjlid'];
      $zgjlid=$_POST['zgjlid'];
      $dqdz=$_POST['dqdz'];

      $upload = new \Think\Upload(); // 实例化上传类
      $upload->rootPath = './Uploads/'; // 设置附件上传根目录
      $upload->saveName = array('uniqid', mt_rand(1,999999).'_'.md5(uniqid())); // 自定义图片重命名
      $upload->exts = array('jpg', 'jpeg' ,'png'); // 设置附件上传类型 只允许照片
      // 上传文件
      $uploadinfo = $upload->upload();
      if($uploadinfo) {// 存在图片上传成功
        foreach ($uploadinfo as $file) {
            # code...
            $image = "/Uploads/".$file['savepath'].$file['savename'];
            $datazp['img_path']=$image;
            $datazp['pz_id']=$zgjlid;
            $imginfo=M()->table('gf_zp_thzg')->data($datazp)->add();
        }
         //修改拍照记录状态
         $datapzjl['zt']='03';//整改完成
         $mappzjl['id']=$pzjlid;
         $pzjlinfo=M()->table('gf_pzjl')->where($mappzjl)->save($datapzjl);
         //修改整改记录状态和时间
         $datazgjl['zt']='02';//已整改
         $datazgjl['scsj']=time();
         $datazgjl['dqdz']=$dqdz;
         $mapzgjl['id']=$zgjlid;
         $zgjlinfo=M()->table('gf_pzjl_thzg')->where($mapzgjl)->save($datazgjl);
         if($pzjlinfo && $zgjlinfo){
            returnApiSuccess('上传成功',$data);
         }
         else{
            returnApiError('上传失败');
            exit();
         }
      }
      else{
          returnApiError('上传失败');
          exit();
      }
    }


    //补传照片
    public function upload_bc(){
      checkscret('secret');//验证授权码
      checkdataPost('pzjlid');//拍照记录ID

      $pzjlid=$_POST['pzjlid'];

      $upload = new \Think\Upload(); // 实例化上传类
      $upload->rootPath = './Uploads/'; // 设置附件上传根目录
      $upload->saveName = array('uniqid', mt_rand(1,999999).'_'.md5(uniqid())); // 自定义图片重命名
      $upload->exts = array('jpg', 'jpeg' ,'png'); // 设置附件上传类型 只允许照片
      // 上传文件
      $uploadinfo = $upload->upload();
      if($uploadinfo) {// 存在图片上传成功
        foreach ($uploadinfo as $file) {
            # code...
            $image = "/Uploads/".$file['savepath'].$file['savename'];
            $datazp['img_path']=$image;
            $datazp['pz_id']=$pzjlid;
            $imginfo=M()->table('gf_zp')->data($datazp)->add();
        }
         if($imginfo){
            returnApiSuccess('补传成功',$data);
         }
         else{
            returnApiError('补传失败');
            exit();
         }
      }
      else{
          returnApiError('补传失败');
          exit();
      }
    }

    //查询拍照记录照片
     public function getzpbypzjl(){
      checkscret('secret');//验证授权码
      checkdataPost('pzjlid');//拍照记录ID

      $pzjlid=$_POST['pzjlid'];
      $map['pz_id']=$pzjlid;
      $data=M()->table('gf_zp')->field('id,concat(\'http://guifan.huishihuanjing.com\',img_path) as imagepath')->where($map)->order('id')->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('没有查询到消息数据。');
        exit();
      }

    }

    //查询已拍照尚未审核的记录
    public function getpzjlbywsh(){
      checkscret('secret');//验证授权码
      checkdataPost('userid');//用户ID
      checkdataPost('limit');//每页个数

      $limit=$_POST['limit'];
      $skip=$_POST['skip'];
      if(empty($skip)){
        $skip=0;
      }
      $fzr=$_POST['userid'];
      $map['fzr']=$fzr;
      $map['zt']='01';//未整改的
      $map['sfsh']=array('exp','is null');
      $data=M()->table('gf_pzjl')->field('id,ssqy(qyid) qymc,sjzd(zflx,\'类型\') zflxmc,zf(zfid) zfmc,sjzd(zlid,\'资料类别\') zllxmc,zlbt(btid) btmc,from_unixtime(sj,\'%Y-%m-%d %H:%i:%s\') sj')->where($map)->limit($skip,$limit)->order('sj desc')->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('没有查询到尚未审核的的记录。');
        exit();
      }
    }


    //查询消息
    public function querymessage(){
      checkscret('secret');//验证授权码
      checkdataPost('userid');//负责人ID
      checkdataPost('limit');//每页个数

      $userid=$_POST['userid'];
      $limit=$_POST['limit'];
      $skip=$_POST['skip'];
      if(empty($skip)){
        $skip=0;
      }
      $map['userid']=$userid;
      $map['sfyd']=0;
      $data=M()->table('gf_message')->field('id as uid,title,concat(content,\'|\',from_unixtime(sj,\'%Y-%m-%d %H:%i:%s\')) subtitle,\'widget://image/messimg.png\'as imgpath')->where($map)->limit($skip,$limit)->order('sj')->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('没有查询到消息数据。');
        exit();
      }

    }

    //设置消息已读
    public function setmsgyd(){
      checkscret('secret');//验证授权码
      checkdataPost('id');//消息ID

      $id=$_POST['id'];
      $map['id']=$id;
      //点击次数加1
      $message=M('gf_message');
      $message->where($map)->setInc('sfyd'); // 阅读次数加1

      returnApiSuccess('设置成功！',$id); 
    }

    //整改记录排名
    public function paiming(){
      checkscret('secret');//验证授权码

      $data=M()->table('gf_pzjl_thzg a,(SELECT @rowno:=0) b')->field('@rowno:=@rowno + 1 AS rowno,count(*) zgts,yh(fzr) fzr')->group('fzr')->order('zgts desc')->select();

      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('没有查询到任何数据');
        exit();
      }
    }

    //签到
    public function qiandao(){
      checkscret('secret');//验证授权码
      checkdataPost('qyid');//企业ID
      checkdataPost('userid');//用户ID
      checkdataPost('qymc');//企业名称
      checkdataPost('wz');//位置

      $qyid=$_POST['qyid'];
      $userid=$_POST['userid'];
      $qymc=$_POST['qymc'];
      $wz=$_POST['wz'];

      $data['qyid']=$qyid;
      $data['fzr']=$userid;
      $data['qymc']=$qymc;
      $data['sj']=time();
      $data['wz']=$wz;

      $info=M()->table('gf_qd')->data($data)->add();

      if($info){
        returnApiSuccess('签到成功',$data);
      }
      else{
        returnApiError('签到失败，请稍后再试。');
        exit();
      }
    }

    //查询试剂类别
    public function getsjlb(){
        checkscret('secret');//验证授权码
        
        $data=M()->table('gf_sjqd')->distinct(true)->field('lb')->select();
        if($data){
          returnApiSuccess('查询成功',$data);
        }
        else{
          returnApiError('查询失败，请稍后再试。');
          exit();
        }
    }

    //根据试剂类别查询名称
    public function getsjmcbylb(){
        checkscret('secret');//验证授权码
        checkdataPost('lb');//类别名称
        
        $lb=$_POST['lb'];

        $map['lb']=$lb;
        $data=M()->table('gf_sjqd')->field('id,lb,mc,bz')->where($map)->select();
        if($data){
          returnApiSuccess('查询成功',$data);
        }
        else{
          returnApiError('查询失败，请稍后再试。');
          exit();
        }
    }

    //查询药剂领取记录
    public function queryyjlbyuser(){
      checkscret('secret');//验证授权码
      checkdataPost('userid');//用户ID
      checkdataPost('limit');//下一次加载多少条

      $userid=$_POST['userid'];
      $limit=$_POST['limit'];
      $skip=$_POST['skip'];
      if(empty($skip)){
        $skip=0;
      }

      $map['b.userid']=$userid;

      $data=M()->table('gf_yjlq_mx a inner join gf_yjlq b on a.lqid=  b.id')->field('yh(b.userid) lqry,b.lb,a.mc,a.jl,from_unixtime(b.sj,\'%Y-%m-%d %H:%i:%s\') sj,case b.sfhz  when \'F\' then \'未汇总\' when \'T\' then \'已汇总\' else \'未设置\' end sfhz,case b.sfjj  when \'F\' then \'未交接\' when \'T\' then \'已交接\' else \'未设置\' end sfjj,case b.sflq  when \'F\' then \'未领取\' when \'T\' then \'已领取\' else \'\' end sflq')->where($map)->order('sj desc,lb')->limit($skip,$limit)->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('查询失败，请稍后再试。');
        exit();
      }
    }

    //查询药剂领取汇总记录
    public function queryyjlqhz(){
      checkscret('secret');//验证授权码
      checkdataPost('userid');//用户ID
      checkdataPost('limit');//下一次加载多少条

      $userid=$_POST['userid'];
      $limit=$_POST['limit'];
      $skip=$_POST['skip'];
      if(empty($skip)){
        $skip=0;
      }

      $map['userid']=$userid;

      $data=M()->table('gf_yjlq_hz')->field('lb,mc,jl,yh(userid) yh,from_unixtime(sj,\'%Y-%m-%d %H:%i:%s\') sj,case sffp  when \'F\' then \'未分配\' when \'T\' then \'已分配\' else \'未设置\' end sffp,case sfjj  when \'F\' then \'未交接\' when \'T\' then \'已交接\' else \'未设置\' end sfjj')->where($map)->order('sj desc,lb')->limit($skip,$limit)->select();

      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('查询失败，请稍后再试。');
        exit();
      }
    }

    //药剂领取提交
    public function writeyjlq(){
      checkscret('secret');//验证授权码
      checkdataPost('lb');//类别名称
      checkdataPost('mc');//药剂名称
      checkdataPost('jl');//药剂计量
      checkdataPost('userid');//用户ID

      $lb=$_POST['lb'];
      $mc=$_POST['mc'];
      $jl=$_POST['jl'];
      $userid=$_POST['userid'];
      $bz=$_POST['bz'];

      $data['lb']=$lb;
      $data['userid']=$userid;
      $data['sj']=time();
      $data['sfhz']='F';
      $data['sfjj']='F';
      $data['sflq']='F';//是否领取
      $data['bz']=$bz;

      $info=M()->table('gf_yjlq')->data($data)->add();

      if($info){
        if(!empty($mc)){
          $arrmc=explode(',',$mc);
          $arrjl=explode(',',$jl);
          for($i=0;$i<count($arrmc);$i++){
              $datamx['mc']=$arrmc[$i];
              $datamx['jl']=$arrjl[$i];
              $datamx['syjl']=$arrjl[$i];
              $datamx['lqid']=$info;           
              $infomx=M()->table('gf_yjlq_mx')->data($datamx)->add();
          }
        }
      }

      if($info){
        returnApiSuccess('提交成功',$data);
      }
      else{
        returnApiError('提交失败，请稍后再试。');
        exit();
      }
    }

    //药剂领取汇总
    public function yjlqhz(){
      checkscret('secret');//验证授权码
      checkdataPost('lb');//类别

      $lb=$_POST['lb'];

      $map['b.sfhz']='F';
      $map['b.lb']=$lb;

      $data=M()->table('gf_yjlq_mx a inner join gf_yjlq b on a.lqid=b.id')->field('b.lb,a.mc,sum(a.jl) zjl')->where($map)->group('lb,mc')->order('lb')->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('查询失败，请稍后再试。');
        exit();
      }
    }

    //药剂领取汇总提交
    public function yjlqhztj(){
      checkscret('secret');//验证授权码
      checkdataPost('lb');//类别名称
      checkdataPost('mc');//药剂名称
      checkdataPost('jl');//药剂计量
      checkdataPost('userid');//用户ID

      $lb=$_POST['lb'];
      $mc=$_POST['mc'];
      $jl=$_POST['jl'];
      $userid=$_POST['userid'];

      $data['lb']=$lb;
      $data['userid']=$userid;
      $data['sj']=time();
      $data['sffp']='F';
      $data['sfjj']='F';
      $info=M()->table('gf_yjhz')->data($data)->add();

      if($info){
        if(!empty($mc)){
          $arrmc=explode(',',$mc);
          $arrjl=explode(',',$jl);
          for($i=0;$i<count($arrmc);$i++){
              $datamx['mc']=$arrmc[$i];
              $datamx['jl']=$arrjl[$i];
              $datamx['hzid']=$info;
              $infomx=M()->table('gf_yjhz_mx')->data($datamx)->add();
          }
        }
      }

      if($info){
        //药剂汇总之后修改是否汇总状态
        $this->setsfhz($lb);
        returnApiSuccess('提交成功',$data);
      }
      else{
        returnApiError('提交失败，请稍后再试。');
        exit();
      }
    }

    //药剂汇总之后修改是否汇总状态
    function setsfhz($lb){
      $map['sfhz']='F';
      $map['lb']=$lb;

      $data['sfhz']='T';

      $info=M()->table('gf_yjlq')->where($map)->save($data);

      if($info){
        return $info;
      }
    }

    //药剂领取未汇总查询
    function queryyjlqbyhz(){
      checkscret('secret');//验证授权码
      checkdataPost('role');//角色

      $role=$_POST['role'];
      if($role=='03'){//药剂汇总
        $map['sfhz']='F';

        $data=M()->table('gf_yjlq')->distinct('true')->field('lb')->where($map)->select();
  
        if($data){
          returnApiSuccess('查询成功',$data);
        }
        else{
          returnApiError('查询失败，请稍后再试。');
          exit();
        }
      }
      else{
        returnApiError('您没有药剂汇总的权限，查询不到任何数据。');
        exit();
      }
     
    }

    //药剂汇总未分配查询
    function queryyjhzbyfp(){
      checkscret('secret');//验证授权码
      checkdataPost('role');//角色

      $role=$_POST['role'];
      if($role=='04'){//药剂分配
        $map['sfjj']='F'; //查询未交接的

        $data=M()->table('gf_yjhz')->field('id,lb')->where($map)->select();
  
        if($data){
          returnApiSuccess('查询成功',$data);
        }
        else{
          returnApiError('查询失败，请稍后再试。');
          exit();
        }
      }
      else{
        returnApiError('您没有药剂分配的权限，查询不到任何数据。');
        exit();
      }
    }

     //药剂领取汇总--分配
     public function yjfphz(){
      checkscret('secret');//验证授权码
      checkdataPost('id');//汇总记录ID

      $id=$_POST['id'];

      $map['hzid']=$id;

      $data=M()->table('gf_yjhz_mx')->field('mc,jl')->where($map)->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('查询失败，请稍后再试。');
        exit();
      }
    }

    //获取药剂调配人员列表
    public function getyjtpry(){
      checkscret('secret');//验证授权码

      $map['role']='05';

      $data=M()->table('gf_user')->field('id,xm')->where($map)->order('id')->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('查询失败，请稍后再试。');
        exit();
      }
    }

    //获取药品分配记录
    public function getypfpjlbyid(){
      checkscret('secret');//验证授权码
      checkdataPost('id');//汇总ID

      $id=$_POST['id'];

      $map['hzid']=$id;

      $data=M()->table('gf_yjfp_mx')->field('yh(fpry) ry,jtrw,FROM_UNIXTIME(sj,\'%Y-%m-%d %H:%i:%s\') sj')->where($map)->order('sj desc')->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('查询失败，请稍后再试。');
        exit();
      }
    }
    
    //分配记录提交
    public function yjfptj(){
      checkscret('secret');//验证授权码
      checkdataPost('hzid');//汇总ID
      checkdataPost('fpry');//分配人员
      checkdataPost('jtrw');//具体任务

      $hzid=$_POST['hzid'];
      $fpry=$_POST['fpry'];
      $jtrw=$_POST['jtrw'];

      $data['hzid']=$hzid;
      $data['fpry']=$fpry;
      $data['jtrw']=$jtrw;
      $data['sj']=time();

      $info=M()->table('gf_yjfp_mx')->data($data)->add();

      if($info){
        $this->setsffp($hzid);
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('查询失败，请稍后再试。');
        exit();
      }
    }

    //修改汇总记录 是否分配
    function setsffp($hzid){
      $map['id']=$hzid;

      $data['sffp']='T';

      $info=M()->table('gf_yjhz')->where($map)->save($data);

      if($info){
        return $info;
      }
    }

    
    //药剂分配未交接查询
    function queryyjhzbyjj(){
      checkscret('secret');//验证授权码
      checkdataPost('role');//角色

      $role=$_POST['role'];
      
      if($role=='04'){//药剂分配
        $map['sffp']='T'; //已分配
        $map['sfjj']='F'; //未交接
  
        $data=M()->table('gf_yjhz')->field('id,lb')->where($map)->select();
  
        if($data){
          returnApiSuccess('查询成功',$data);
        }
        else{
          returnApiError('查询失败，请稍后再试。');
          exit();
        }
      }
      else{
        returnApiError('您没有交接的权限，查询不到任何数据。');
        exit();
      }
    }

    //药剂交接提交
    public function yjjjtj(){
      checkscret('secret');//验证授权码
      checkdataPost('hzid');//汇总ID
      checkdataPost('lb');//类别

      $hzid=$_POST['hzid'];
      $lb=$_POST['lb'];

      $map['id']=$hzid;

      $data['sfjj']='T';

      $info=M()->table('gf_yjhz')->where($map)->save($data);

      if($info){
        $this->setsfjjbylqjl($lb);
        returnApiSuccess('交接成功',$info);
      }
      else{
        returnApiError('交接失败，请稍后再试。');
        exit();
      }
    }

    //修改药剂领取记录 是否交接
    function setsfjjbylqjl($lb){
        $map['lb']=$lb;
        $map['sfhz']='T';//已汇总的记录

        $data['sfjj']='T';

        $info=M()->table('gf_yjlq')->where($map)->save($data);

        if($info){
          return $info;
        }
      }

      //查询药剂分配任务
      public function getyjfprwbyuser(){
        checkscret('secret');//验证授权码
        checkdataPost('userid');//用户ID
        checkdataPost('role');//角色

        $userid=$_POST['userid'];
        $role=$_POST['role'];

        if($role=='05'){//药剂调配
          $map['fpry']=$userid;
          $map['sffp']='T';//已分配
          $map['sfjj']='F';//未交接
          $data=M()->table('gf_yjfp_mx a inner join gf_yjhz b on a.hzid=b.id')->field('a.hzid,b.lb,FROM_UNIXTIME(a.sj,\'%Y-%m-%d %H:%i:%s\') fpsj,a.jtrw')->where($map)->select();
          if($data){
            returnApiSuccess('查询成功',$data);
          }
          else{
            returnApiError('查询失败，请稍后再试。');
            exit();
          }
        }
        else{
          returnApiError('您不是药剂调配人员，无权限查询数据。');
          exit();
        }
      }

    //药剂领取提交(应急)
    public function writeyjlqbyyj(){
      checkscret('secret');//验证授权码
      checkdataPost('lb');//类别名称
      checkdataPost('mc');//药剂名称
      checkdataPost('jl');//药剂计量
      checkdataPost('userid');//用户ID

      $lb=$_POST['lb'];
      $mc=$_POST['mc'];
      $jl=$_POST['jl'];
      $userid=$_POST['userid'];
      $bz=$_POST['bz'];

      $data['lb']=$lb;
      $data['userid']=$userid;
      $data['sj']=time();
      $data['sffp']='F';
      $data['sfjj']='F';
      $data['sflq']='F';//是否领取
      $data['yjsh']='F';
      $data['ejsh']='F';
      $data['bz']=$bz;

      $info=M()->table('gf_yjyjlq')->data($data)->add();

      if($info){
        if(!empty($mc)){
          $arrmc=explode(',',$mc);
          $arrjl=explode(',',$jl);
          for($i=0;$i<count($arrmc);$i++){
              $datamx['mc']=$arrmc[$i];
              $datamx['jl']=$arrjl[$i];
              $datamx['syjl']=$arrjl[$i];
              $datamx['yjlqid']=$info;           
              $infomx=M()->table('gf_yjyjlq_mx')->data($datamx)->add();
          }
        }
      }

      if($info){
        returnApiSuccess('提交成功',$data);
      }
      else{
        returnApiError('提交失败，请稍后再试。');
        exit();
      }
    }

    //药剂应急领取审核
    public function yjyjlqsh(){
      checkscret('secret');//验证授权码
      checkdataPost('role');//角色

      $role=$_POST['role'];

      if($role=='06'||$role=='07'){
        if($role=='06'){//一级审核
          $map['yjsh']='F';
        } 
        else if($role=='07'){//二级审核
          $map['yjsh']='T';
          $map['ejsh']='F';
        }
        $data=M()->table('gf_yjyjlq')->field('id,lb,yh(userid) lqr,FROM_UNIXTIME(sj,\'%Y-%m-%d %H:%i:%s\') sj,bz')->where($map)->select();

        if($data){
          returnApiSuccess('查询成功',$data);
        }
        else{
          returnApiError('查询失败，暂无数据。');
          exit();
        }
      }
      else{
        returnApiError('您没有审核权限，无法查询数据。');
        exit();
      }
    }

    //药剂应急领取明细
    public function yjyjlqmx(){
      checkscret('secret');//验证授权码
      checkdataPost('id');//领取ID

      $yjlqid=$_POST['id'];

      $map['yjlqid']=$yjlqid;

      $data=M()->table('gf_yjyjlq_mx')->field('mc,jl')->where($map)->select();

      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('查询失败，暂无数据。');
        exit();
      }
    }

    //药剂应急审核提交
    public function yjyjshtj(){
      checkscret('secret');//验证授权码
      checkdataPost('id');//领取ID
      checkdataPost('role');//角色

      $id=$_POST['id'];
      $role=$_POST['role'];

      if($role=='06'){
        $data['yjsh']='T';
      }
      else if($role=='07'){
        $data['ejsh']='T';
      }

      $map['id']=$id;

      $info=M()->table('gf_yjyjlq')->where($map)->save($data);

      if($info){
        returnApiSuccess('审核通过',$data);
      }
      else{
        returnApiError('审核失败，请稍后再试。');
        exit();
      }
    }

    //药剂应急领取未分配查询
    function queryyjlqbyfp(){
      checkscret('secret');//验证授权码
      checkdataPost('role');//角色

      $role=$_POST['role'];
      if($role=='04'){//药剂分配
        $map['sfjj']='F';//查询未交接的
        $map['ejsh']='T';//二级审核

        $data=M()->table('gf_yjyjlq')->field('id,lb')->where($map)->select();
  
        if($data){
          returnApiSuccess('查询成功',$data);
        }
        else{
          returnApiError('查询失败，请稍后再试。');
          exit();
        }
      }
      else{
        returnApiError('您没有药剂分配的权限，查询不到任何数据。');
        exit();
      }
    }

     //获取药品应急分配记录
     public function getyjfpjlbyid(){
      checkscret('secret');//验证授权码
      checkdataPost('id');//应急领取ID

      $id=$_POST['id'];

      $map['yjlqid']=$id;

      $data=M()->table('gf_yjyjfp_mx')->field('yh(fpry) ry,jtrw,FROM_UNIXTIME(sj,\'%Y-%m-%d %H:%i:%s\') sj')->where($map)->order('sj desc')->select();
      if($data){
        returnApiSuccess('查询成功',$data);
      }
      else{
        returnApiError('查询失败，请稍后再试。');
        exit();
      }
    }

    //应急分配提交
    public function yjyjfptj(){
      checkscret('secret');//验证授权码
      checkdataPost('yjlqid');//应急领取ID
      checkdataPost('fpry');//分配人员
      checkdataPost('jtrw');//具体任务

      $yjlqid=$_POST['yjlqid'];
      $fpry=$_POST['fpry'];
      $jtrw=$_POST['jtrw'];

      $data['yjlqid']=$yjlqid;
      $data['fpry']=$fpry;
      $data['jtrw']=$jtrw;
      $data['sj']=time();

      $info=M()->table('gf_yjyjfp_mx')->data($data)->add();

      if($info){
        $this->setyjsffp($yjlqid);
        returnApiSuccess('提交成功',$data);
      }
      else{
        returnApiError('提交失败，请稍后再试。');
        exit();
      }
    }
    //设置应急分配记录
    function setyjsffp($yjlqid){
      $map['id']=$yjlqid;

      $data['sffp']='T';

      $info=M()->table('gf_yjyjlq')->where($map)->save($data);

      if($info){
        return $info;
      }
    }

      
    //药剂应急分配未交接查询
    function queryyjyjbyjj(){
      checkscret('secret');//验证授权码
      checkdataPost('role');//角色

      $role=$_POST['role'];
      
      if($role=='04'){//药剂分配
        $map['sffp']='T'; //已分配
        $map['sfjj']='F'; //未交接
  
        $data=M()->table('gf_yjyjlq')->field('id,lb')->where($map)->select();
  
        if($data){
          returnApiSuccess('查询成功',$data);
        }
        else{
          returnApiError('查询失败，请稍后再试。');
          exit();
        }
      }
      else{
        returnApiError('您没有交接的权限，查询不到任何数据。');
        exit();
      }
    }

    //药剂交接提交
    public function yjyjjjtj(){
      checkscret('secret');//验证授权码
      checkdataPost('yjlqid');//应急领取ID

      $yjlqid=$_POST['yjlqid'];

      $map['id']=$yjlqid;

      $data['sfjj']='T';

      $info=M()->table('gf_yjyjlq')->where($map)->save($data);

      if($info){
        returnApiSuccess('交接成功',$info);
      }
      else{
        returnApiError('交接失败，请稍后再试。');
        exit();
      }
    }

     //查询药剂应急分配任务
     public function getyjyjfprwbyuser(){
      checkscret('secret');//验证授权码
      checkdataPost('userid');//用户ID
      checkdataPost('role');//角色

      $userid=$_POST['userid'];
      $role=$_POST['role'];

      if($role=='05'){//药剂调配
        $map['fpry']=$userid;
        $map['sffp']='T';//已分配
        $map['sfjj']='F';//未交接
        $data=M()->table('gf_yjyjfp_mx a inner join gf_yjyjlq b on a.yjlqid=b.id')->field('a.yjlqid,b.lb,FROM_UNIXTIME(a.sj,\'%Y-%m-%d %H:%i:%s\') fpsj,a.jtrw')->where($map)->select();
        if($data){
          returnApiSuccess('查询成功',$data);
        }
        else{
          returnApiError('查询失败，请稍后再试。');
          exit();
        }
      }
      else{
        returnApiError('您不是药剂调配人员，无权限查询数据。');
        exit();
      }
    }

}